/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.sacodemel.financeiro.modelo;

import java.io.Serializable;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;

/**
 *
 * @author X4Q1
 */
@Entity
@Table(schema="PA")
public class RegistroCaixa  implements  Serializable {
    
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)  
    private Integer id;
    @Column
    private String tipoRegistroCaixa;
    @Column
    @Temporal(javax.persistence.TemporalType.DATE)
    private Date dataOperacao;
    @ManyToOne
    @JoinColumn(name = "investidor", referencedColumnName = "id")
    private Pessoa investidor;
    @Column
    private String origemReceita;
    @Column
    private Double valor;
    @Column
    private String observacao;
    @Column
    private String status;

    public RegistroCaixa(){
        
    }
    
     public RegistroCaixa(Pessoa investidor){
        this.investidor = investidor;   
    }
    
    public RegistroCaixa(int id, String tipoRegistroCaixa, Date dataOperacao, 
                         Pessoa investidor, String origemReceita, Double valor, String observacao) {
        
        this.id = id;
        this.tipoRegistroCaixa = tipoRegistroCaixa;
        this.dataOperacao = dataOperacao;
        this.observacao = observacao;
        this.valor = valor;
        
        this.investidor = investidor;
        this.origemReceita = origemReceita;

    }

    /**
     * @return the id
     */
    public Integer getId() {
        return id;
    }

    /**
     * @param id the id to set
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * @return the tipoRegistroCaixa
     */
    public String getTipoRegistroCaixa() {
        return tipoRegistroCaixa;
    }

    /**
     * @param tipoRegistroCaixa the tipoRegistroCaixa to set
     */
    public void setTipoRegistroCaixa(String tipoRegistroCaixa) {
        this.tipoRegistroCaixa = tipoRegistroCaixa;
    }

    /**
     * @return the dataOperacao
     */
    public Date getDataOperacao() {
        return dataOperacao;
    }

    /**
     * @param dataOperacao the dataOperacao to set
     */
    public void setDataOperacao(Date dataOperacao) {
        this.dataOperacao = dataOperacao;
    }

    /**
     * @return the investidor
     */
    public Pessoa getInvestidor() {
        return investidor;
    }

    /**
     * @param investidor the investidor to set
     */
    public void setInvestidor(Pessoa investidor) {
        this.investidor = investidor;
    }

    /**
     * @return the valor
     */
    public Double getValor() {
        return valor;
    }

    /**
     * @param valor the valor to set
     */
    public void setValor(Double valor) {
        this.valor = valor;
    }

    /**
     * @return the observacao
     */
    public String getObservacao() {
        return observacao;
    }

    /**
     * @param observacao the observacao to set
     */
    public void setObservacao(String observacao) {
        this.observacao = observacao;
    }

    /**
     * @return the status
     */
    public String getStatus() {
        return status;
    }

    /**
     * @param status the status to set
     */
    public void setStatus(String status) {
        this.status = status;
    }

    /**
     * @return the origemReceita
     */
    public String getOrigemReceita() {
        return origemReceita;
    }

    /**
     * @param origemReceita the origemReceita to set
     */
    public void setOrigemReceita(String origemReceita) {
        this.origemReceita = origemReceita;
    }

    
    
}
